package com.zengdada.authority.service;

import com.zengdada.authority.model.AppDictionary;

import java.util.List;
import java.util.Map;

/**
 * @Auther: 12614
 * @Contact: 1261438511@qq.com
 * @Date: 2018/11/26 21:38
 * @Description:
 */
public interface AppDictionaryAuthorityService extends BaseService<AppDictionary> {

    /**
     * 根据起始ids 递归查询
     *
     * @param startIds 起始id集合 为空时 查询所有没有父节点的数据
     * @return
     */
    List<Map<String, Object>> recursiveQuery(List<String> startIds, boolean retainHead);

    /**
     * 根据起始ids 递归查询 并转为树结构
     *
     * @param startIds 起始id集合 为空时 查询所有没有父节点的数据
     * @return
     */
    List<Map<String, Object>> recursiveQueryTree(List<String> startIds, boolean retainHead, String childrenName);

    /**
     * 根据父ID查询子列表（一级）
     *
     * @param parentId
     * @return
     */
    List<AppDictionary> getDictionaryListByParentId(String parentId);

    /**
     * 根据父ID级子一级的值查询字典
     *
     * @param parentId
     * @return
     */
    AppDictionary getDictionaryByParentIdAndValue(String parentId, String value);

}